package org.jeecg.modules.miniAppCustomerEndPoint.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.modules.platformMasterEndPoint.enums.JxBusinessStateEnum;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 从店铺信息库中 挑选店铺，配置给某个站点，添加一些正对该站点的店铺自定义信息
 */
@Data
@TableName("jx_site_store")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "从 jx_store_repository 店铺库中挑选出来的店铺，为站点配置店铺列表", description = "各个站点自己的店铺列表")
public class JxSiteStoreDo {

    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;

    @TableField(value = "site_id")
    @ApiModelProperty(value = "不同的站点配置不同店铺")
    private String siteId;

    /**
     * 门店id
     */
    @TableField("store_id")
    private String storeId;

    /**
     * 门店状态
     */
    @Excel(name = "门店状态", width = 15)
    @ApiModelProperty(value = "门店状态")
    private JxBusinessStateEnum storeStatus;
    /**
     * 包装评分
     */
    @Excel(name = "包装评分", width = 15)
    @ApiModelProperty(value = "包装评分")
    private Double packagingScore;
    /**
     * 分量评分
     */
    @Excel(name = "分量评分", width = 15)
    @ApiModelProperty(value = "分量评分")
    private Double componentScore;
    
    /**
     * 口味评分
     */
    @Excel(name = "口味评分", width = 15)
    @ApiModelProperty(value = "口味评分")
    private Double flavorScore;

    /**
     * 排序
     */
    @Excel(name = "排序", width = 15)
    @ApiModelProperty(value = "排序")
    private Integer sort;


    /**门店销量*/
    @ApiModelProperty(value = "门店月销量")
    @TableField(value = "sale_count")
    private Long storeSaleCount;

    @TableField("SITE_MASTER_COMMISSION_TYPE")
    private Short siteMasterCommissionType;

    @TableField("SITE_MASTER_COMMISSION_VALUE")
    private Integer siteMasterCommissionValue;

    @TableField("PLATFORM_COMMISSION_TYPE")
    private Short platFormCommissionType;

    @TableField("PLATFORM_COMMISSION_VALUE")
    private Integer platFormCommissionValue;

    /**
     * 店铺默认合作价，店铺中各个菜品的信息中，继承此合作价，然后由站长对菜品合作价进行自定义
     */
    private Integer storePrice;

    /**
     * 店铺默认销售价，店铺中各个菜品的信息中，继承此销售价，然后由站长对菜品销售价进行自定义
     */
    private Integer salePrice;

    @TableLogic
    private Integer delFlag;

    /**
     * 创建日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;

    /**
     * 更新日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
}
